#include<iostream>
using namespace std;

#include<stack>

//class Parenthesis {
//public:
//    bool chkParenthesis(string A, int n) {
//        string::iterator it = A.begin();
//        stack<char> st;
//
//        while (it != A.end())
//        {
//            if (*it == '(' || *it == '[' || *it == '{')
//                st.push(*it);
//            if (*it == ')' || *it == ']' || *it == '}')
//            {
//                if (st.empty())
//                    return false;
//                char tmp =st.top();
//                if (*it == ')' && tmp != '('
//                    || *it == ']' && tmp != '['
//                    || *it == '}' && tmp != '{')
//                    return false;
//                st.pop();
//            }
//            else
//                return false;
//        }
//        if (!st.empty())
//            return false;
//        return true;
//    }
//};
//
//
//int main()
//{
//    string s("(()())");
//
//    Parenthesis p;
//    cout << p.chkParenthesis(s, 6);
//}